Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

467
Vistas
Qué es "Debe estar manejando un gesto de usuario para mostrar una solicitud de permiso". mensaje de error en Chrome Web Serial API?

Soy un verdadero principiante cuando se trata de programación. Mi intención es controlar un dispositivo con la API integrada en Google Chrome a través del puerto COM RS485. Intento reproducir el siguiente tutorial: https://web.dev/serial/

Aparece el siguiente mensaje de error en la consola:

"No detectada (en promesa) DOMException: no se pudo ejecutar 'requestPort' en 'Serial': debe estar manejando un gesto de usuario para mostrar una solicitud de permiso".

¿Cómo puedo solucionar este error?

Muchas gracias por su ayuda.

 <!DOCTYPE html> <html lang="de"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>examplepage</title> <script> async function caller() { // Prompt user to select any serial port. const port = await navigator.serial.requestPort(); // Wait for the serial port to open. await port.open({ baudRate: 9600 }); }; if ("serial" in navigator) { alert("Your browser supports Web Serial API!"); caller(); } else {alert("Your browser does not support Web Serial API, the latest version of Google Chrome is recommended!");}; </script> </head> <body> </body> </html>

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

El mensaje de error "Must be handling a user gesture to show a permission request." significa que se debe llamar a navigator.serial.requestPort() dentro de una función que responde a un gesto del usuario, como un clic.

En su caso, sería algo como a continuación.

 <button>Request Serial Port</button> <script> const button = document.querySelector('button'); button.addEventListener('click', async function() { // Prompt user to select any serial port. const port = await navigator.serial.requestPort(); // Wait for the serial port to open. await port.open({ baudRate: 9600 }); }); </script>
about 4 years ago · Juan Pablo Isaza Denunciar

0

El siguiente código funciona. Espero que ayude a otros que estén interesados.

 <!DOCTYPE html> <html lang="de"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>examplepage</title> <script> async function start() { // Prompt user to select any serial port. const port = await navigator.serial.requestPort(); // Wait for the serial port to open. await port.open({ baudRate: 9600 }); } if ("serial" in navigator) { alert("Your browser supports Web Serial API!"); } else {alert("Your browser does not support Web Serial API, the latest version of Google Chrome is recommended!");}; </script> </head> <body> <button onclick="start()">Click me</button> </body> </html>

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda